home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
MacHack 1996
/
MacHack 1996.toast
/
Presentations
/
Presentations ’94
/
Timothy Knox
/
Help
/
Help Files
/
Miscellaneous
/
Church Numerals
next >
Wrap
Text File
|
1994-06-24
|
871b
|
44 lines
{•••••••••• The Church Numerals in Help ••••••••••••}
(define zero (lambda(f) (lambda(x) x)))
;the successor function
(define suc
(lambda(n)
(lambda(f)
(lambda(x) ((n f)(f x))))))
;some numbers
(define one (suc zero))
(define two (suc un))
(define three (suc deux))
(define four (suc three))
; the usual functions
(define plus
(lambda(n1)
(lambda(n2)
(lambda(f)
(lambda(x)
((n1 f) ((n2 f) x)))))))
(define mult
(lambda(n1)
(lambda(n2)
(lambda(f)
(lambda(x)
((n1 (n2 f)) x))))))
(define exp
(lambda(n1)
(lambda(n2)
(lambda(f)
(lambda(x)
(((n2 n1) f) x))))))
; test
((((exp deux) trois) 1+) 0)